package com.turing.user.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.turing.orm.model.domain.common.BaseDo;
import lombok.*;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * @Description
 * @Author livin
 * @Date 2021-12-30
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Builder(toBuilder = true)
@Accessors(chain = true)
@AllArgsConstructor
@NoArgsConstructor
public class Customer extends BaseDo<Customer> implements Serializable {

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @TableField("admin_id")
    private Integer adminId;

    @TableField("name")
    private String name;

    @TableField("attribute")
    private String attribute;

    @TableField("code")
    private String code;

    @TableField("credit_code")
    private String creditCode;

    @TableField("stage")
    private String stage;

    @TableField("address")
    private String address;

    @TableField("contact_name")
    private String contactName;

    @TableField("contact_phone")
    private String contactPhone;

    @TableField("status")
    private Integer status;

    @TableField("constructed")
    private Integer constructed;

    @TableField("sales_id")
    private Integer salesId;

    @TableField("salesman")
    private String salesman;

    @TableField("english_name")
    private String englishName;

    @TableField("licensee")
    private String licensee;

    @TableField("customer_key")
    private String customerKey;

    @TableField("rsa_private_key")
    private String rsaPrivateKey;

    @TableField("created_by")
    private String createdBy;

    @TableField("updated_by")
    private String updatedBy;

    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}

